1. Field of the Description
The present invention relates, in general, to control of unmanned aerial vehicles (UAVs) such as multicopters, and, more particularly, to control methods and systems for use with flocks of UAVs that are useful for safely moving the UAVs in a synchronized or choreographed manner as may be useful in many entertainment applications to provide an aerial display with the UAVs.
2. Relevant Background
In recent years, there has been a growing interest in utilizing unmanned aerial vehicles (UAVs) such as remotely controlled drones/airplanes, helicopters, and multicopters to perform a wide variety of tasks. An ongoing challenge, though, is how to better control the UAVs for each of these particular uses or while performing differing tasks.
An exemplary UAV that is receiving growing attention is the multirotor or multicopter. This UAV is a rotorcraft with more than two rotors, and multicopters often use fixed-pitch blades with control of vehicle motion being achieved by varying the relative speed of each rotor to change the thrust and torque produced by each rotor. Multicopters may also be named quadcopters, hexacopters, and octocopters to refer to their number of rotors (e.g., 4, 6, or 8, respectively).
Due to their ease of both construction and control, multirotor aircraft are frequently used in model and radio control aircraft projects such as to provide a lower budget option for creating aerial photography and videos. In these implementations, the UAVs may carry as a payload one or more cameras and be remotely controlled to move over a targeted object or geographical area. Electronically controlled multicopters may be powered using a central lithium polymer or other battery driving brushless motors and propellers with control provided with an onboard flight controller/stabilization board selectively throttling the motors in response to control signals and that may be in communication with an operator (e.g., on the ground) using a radio controller unit.
In some applications, it is desirable or useful to perform a task through the use of two or more UAVs that need to be controlled in a centralized or organized manner to perform the task. For example, numerous drone aircraft or UAVs such as multicopters or flying robots may be used to provide surveillance of a geographical area. In such an application, swarm control or swarming may be used to control the UAVs as they fly over the targeted geographical area. A swarm may be thought of as a self-organizing particle system with numerous autonomous, reflexive agents (e.g., UAVs are the particles in this example) whose collective movements may be determined by local influences such as wind and obstacles such as another nearby UAV.
While swarming, the UAVs move in the space over the monitored area in a random manner while remaining within the defined outer boundaries. The UAVs are independent and are often locally controlled, which may include communicating with a nearby UAV to determine which one moves or whether both should move to avoid an impending collision. Collisions are an issue as the UAVs move independently and randomly and often will have crossing paths in the shared airspace. Swarming allows the UAVs to fly over a large area, which is useful in monitoring applications. However, designing controllers for use in UAVs for swarms of flying objects or UAVs remains a challenge to manufacturers of UAVs and, in some cases, collisions have proven very difficult to entirely eliminate.
When using multiple UAVs or flying robots to perform tasks, other control techniques have been used to allow their safe use. In some applications, collisions are an accepted risk of the control method, with the area under the flying robots being kept free of human observers. In other applications, each UAV is controlled from a central controller that is typically placed on the ground. A predetermined flight path is designed or selected for each UAV such that none of the flight paths cross, and a tolerance or spatial envelope is provided to account for flight variances due to conditions such as wind that may cause a UAV to stray off its predefined course. In these applications, the UAVs operate independently with no collisions occurring, but the UAVs typically remain a relatively large distance apart without close interaction or overlapping and/or crossing flight paths.
While these control techniques have value for certain uses of UAVs, there are many applications where it is desirable to operate the UAVs in different manners. Specifically, it is desirable in some settings to synchronize the movement and operation of the UAVs to have the UAVs or flying robots operate in a choreographed manner to perform a task or provide an aerial display, which is not possible through swarm control where the UAVs move randomly and independently. Further, it is desirable in these and other applications to allow the UAVs to cross their flight paths or to fly relatively close by or around another UAV, which is not possible with control processes defining independent and non-crossing flight paths.
Hence, there remains a need for a control method and/or system for use in operating a number of UAVs such as multicopters to provide synchronized flight. Preferably, such a method would be non-swarming since it is important that there are no collisions and since it is useful to avoid the appearance of merely random movement (at least in some applications). Further, it is desirable for the UAVs to each react safely to environmental conditions such as changes in wind speeds and directions during group flight of choreographed UAVs. In some cases, the control should allow for flight paths of the UAVs to cross in an airspace so as to achieve a desired effect or to perform a particular task that requires crossing paths.